package io.renren.modules.pinKao.service;

import io.renren.modules.pinKao.entity.PinKaoAndOrder;
import io.renren.modules.pinKao.entity.PinKaoCourse;
import io.renren.modules.pinKao.entity.PinKaoTeam;
import io.renren.modules.pinKao.entity.PinKaoUser;

import java.util.List;
import java.util.Map;

public interface PinKaoService {
    void launchPinKao(PinKaoAndOrder pinKaoTeam);

    PinKaoCourse getPinKaoCourseInfo(Map map);

    void insertPinKaoUserInfo(Map map);

    void addPinKaoCourseCount(int courseId);

    void joinPinKao(Map map);

    PinKaoTeam getPinKaoTeamByTeamId(int teamId);

    void delPinKaoCourseCount(int courseId);

    void addPinKaoTeamCount(int teamId);

    void delPinKaoTeamCount(int teamId);

    List getPinKaoTeamsByCourse(Map map);

    void updateIsSuccessByTeamId(int teamId);

    void exitPinKao(Map map);

    PinKaoUser getPinKaoUserByUserAndTeamId(Map userMap);

    PinKaoTeam getPinKaoTeamByTeamIdAndUserId(Long userId, int teamId);

    List getPinKaoCourseByClassification(Map map);

    int getPinKaoCourseTeamCount(int courseId);

    void updateStateByCourseId(int courseId);

    PinKaoCourse getPinKaoCourseInfoByCourseId(int courseId);

    void updateCourseCount(Map m);

    PinKaoTeam getPinKaoTeamByUserIds(String userId);

    void updateStateByTeamId(int teamId);
}
